package com.hoapital.outpbillwork.function;


/**
 * 主要测试查询待缴费列表合并订单数据为什么和查询总和不对
 * 发现有开单项目的总和不等于费用明细总和的情况
 */
public class TestQueryBillsum {
//    public static void main(String[] args) {
//        HttpResponse execute = null;
//        String body = "";
//        try {
//            execute = HttpRequest.post("http://192.168.13.230:8083/orderwork/orderquery").body("{\"hospitalName\":\"宝鸡高新医院\",\"accessToken\":\"\",\"hospitalCode\":\"58697240\",\"outpOrInp\":\"01\",\"visitId\":\"\",\"patInfo\":{\"patientId\":\"10061113\",\"sex\":\"\",\"chargeType\":\"\",\"idNo\":\"\",\"healthCardId\":\"\",\"identity\":\"\",\"name\":\"\"},\"querySql\":\"2022/08/11\",\"type\":\"1\"}").execute();
//            body = execute.body();
//        } catch (Exception e) {
//            throw new ExceptionHelp(ExceptionHelpEnum.API_BILL_FILED);
//        }
//        String data = JSON.parseObject(body).getString("data");
//        JSONArray orderQueryList = JSON.parseObject(data).getJSONArray("orderQueryList");
//        JSONObject jsonObject1 = orderQueryList.getJSONObject(0);
//        JSONArray orderDetailList = jsonObject1.getJSONArray("orderDetailList");
//        final BigDecimal[] bigDecimal = {new BigDecimal(0)};
//        final BigDecimal[] bigDecimalCharges = {new BigDecimal(0)};
//
//        final BigDecimal[] unbigDecimal = {new BigDecimal(0)};
//        final BigDecimal[] unbigDecimalCharges = {new BigDecimal(0)};
//
//        orderDetailList.stream().forEach(orderDetail -> {
//            BigDecimal bigDecimal1 = new BigDecimal(0);
//            BigDecimal bigDecimalCharge = new BigDecimal(0);
//
//            BigDecimal unbigDecimal1 = new BigDecimal(0);
//            BigDecimal unbigDecimalCharge = new BigDecimal(0);
//
//            OrderDetail orderDetail1 = JSON.parseObject(orderDetail.toString(), OrderDetail.class);
//            List<Object> outpDoctorAssistantList = orderDetail1.getOutpDoctorAssistantList();
//            JSONObject outpOrderDescTemp = JSON.parseObject(orderDetail1.getOutpOrderDescTemp().toString());
//
//                for (Object o : outpDoctorAssistantList) {
//                    JSONObject jsonObject = JSON.parseObject(o.toString());
//                    String costs = jsonObject.getString("costs");
//                    String charges = jsonObject.getString("charges");
//                    BigDecimal bigDecimal2 = new BigDecimal(costs);
//                    BigDecimal bigDecimal3 = new BigDecimal(charges);
//
//                    BigDecimal unbigDecimal2 = new BigDecimal(costs);
//                    BigDecimal unbigDecimal3 = new BigDecimal(charges);
//
//                    bigDecimalCharge = bigDecimalCharge.add(bigDecimal3);
//                    bigDecimal1 = bigDecimal1.add(bigDecimal2);
//
//
//                    unbigDecimalCharge = bigDecimalCharge.add(unbigDecimal3);
//                    unbigDecimal1 = bigDecimal1.add(unbigDecimal2);
//                }
//            if (Integer.parseInt(outpOrderDescTemp.getString("chargeFlag")) == 0) {
//                System.out.println("未计费数据=========就诊时间："+outpOrderDescTemp.getString("visitDate") + "=========就诊号：" + outpOrderDescTemp.getString("visitNo") +  "========费用总和应收：" + bigDecimal1+  "========费用总和应收：" + bigDecimalCharge);
//                bigDecimal[0] = bigDecimal[0].add(bigDecimal1);
//                bigDecimalCharges[0] = bigDecimalCharges[0].add(bigDecimalCharge);
//            }else {
////                System.out.println("计费数据=========就诊时间："+outpOrderDescTemp.getString("visitDate") + "=========就诊号：" + outpOrderDescTemp.getString("visitNo") +  "========费用总和应收：" + bigDecimal1+  "========费用总和应收：" + bigDecimalCharge);
//                unbigDecimal[0] = unbigDecimal[0].add(unbigDecimal1);
//                unbigDecimalCharges[0] = unbigDecimalCharges[0].add(unbigDecimalCharge);
//            }
//        });
//        System.out.println("未计费数据应收总额：" + bigDecimal[0] + "=========实收：" + bigDecimalCharges[0]);
//
//        System.out.println("计费数据应收总额：" + unbigDecimal[0] + "=========实收：" + unbigDecimalCharges[0]);
//    }
}
